home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1994 / MacHack 1994.toast / MacHack™ 1987-1994 / MacHack™ '90 / MacHack'90 Proceedings / John Norstad / Reusable Code / Source / utl.h < prev    next >
Encoding:
C/C++ Source or Header  |  1990-06-10  |  4.4 KB  |  111 lines  |  [TEXT/MPS ]

  1. /*______________________________________________________________________
  2.  
  3.     utl.h - Utilities Interface.
  4.     
  5.     Copyright © 1988, 1989, 1990 Northwestern University.  Permission is 
  6.     granted to use this code in your own projects, provided you give credit 
  7.     to both John Norstad and Northwestern University in your about box or 
  8.     document.
  9. _____________________________________________________________________*/
  10.  
  11.  
  12. #ifndef __utl__
  13. #define __utl__
  14.  
  15.  
  16. /* ASCII codes. */
  17.  
  18. #define leftArrow                0x1C        /* ascii code for left arrow key */
  19. #define rightArrow            0x1D        /* ascii code for right arrow key */
  20. #define upArrow                0x1E        /* ascii code for up arrow key */
  21. #define downArrow                0x1F        /* ascii code for down arrow key */
  22. #define tabKey                    0x09        /* ascii code for tab key */
  23. #define returnKey                0x0d        /* ascii code for return key */
  24. #define enterKey                0x03        /* ascii code for enter key */
  25. #define deleteKey                0x08        /* ascii code for delete key */
  26.  
  27.  
  28. /* System constants. */
  29.                                                     
  30. #define    FSFCBLen                0x3F6        /* address of low-memory global telling
  31.                                                     whether or not we have HFS 
  32.                                                     (see TN 66) */
  33. #define    FCBSPtr                0x34E        /* pointer to file control blocks */                                                    
  34.  
  35. #define    sfNoPrivs            -3993        /* rsrc id of standard file alert */
  36. #define    sfBadChar            -3994        /* rsrc id of standard file alert */
  37. #define    sfSysErr                -3995        /* rsrc id of standard file alert */
  38. #define    sfReplaceExisting    -3996        /* rsrc id of standard file alert */
  39. #define    sfDiskLocked        -3997        /* rsrc id of standard file alert */
  40.  
  41. #define    titleBarHeight        19            /* height of std doc window title bar */
  42.  
  43.  
  44. /* Type definitions. */
  45.  
  46. typedef void (*utl_ComputeStdStatePtr)(WindowPtr theWindow);
  47.  
  48. typedef void (*utl_ComputeDefStatePtr)(WindowPtr theWindow,
  49.     Rect *userState);
  50.     
  51.  
  52. /* Function definitions. */
  53.  
  54. extern void utl_PlotSmallIcon (Rect *theRect, Handle theHandle);
  55. extern short utl_GetApplVol (void);
  56. extern short utl_GetSysVol (void);
  57. extern short utl_GetBlessedWDRefNum (void);
  58. extern long utl_GetVolFilCnt (short volRefNum);
  59. extern short utl_GetMBarHeight (void);
  60. extern Boolean utl_HaveColor (void);
  61. extern void utl_GetWindGD (WindowPtr theWindow, GDHandle *gd, 
  62.     Rect *screenRect, Rect *windRect, Boolean *hasMB);
  63. extern void utl_CenterDlogRect (Rect *rect, Boolean centerMain);
  64. extern void utl_CenterRect (Rect *rect);
  65. extern void utl_StaggerWindow (Rect *windRect, short initialOffset, short offset, 
  66.     Point *pos);
  67. extern void utl_PlugParams (Str255 line1, Str255 line2, Str255 p0, 
  68.     Str255 p1, Str255 p2, Str255 p3);
  69. extern Boolean utl_Rom64 (void);
  70. extern short utl_GetSysWD (void);
  71. extern Boolean utl_CheckPack (short packNum, Boolean preload);
  72. extern void utl_InitSpinCursor (CursHandle cursArray[], short numCurs, 
  73.     short tickInterval);
  74. extern void utl_SpinCursor (void);
  75. extern Boolean utl_VolIsMFS (short vRefNum);
  76. extern Boolean utl_Ejectable (short vRefNum);
  77. extern OSErr utl_DoDiskInsert (long message, short *vRefNum);
  78. extern void utl_CopyPString (Str255 dest, Str255 source);
  79. extern WindowPtr utl_GetNewWindow (short windowID, Ptr wStorage, 
  80.     WindowPtr behind);
  81. extern DialogPtr utl_GetNewDialog (short dialogID, Ptr dStorage, 
  82.     WindowPtr behind);
  83. extern ControlHandle utl_GetNewControl (short controlID, 
  84.     WindowPtr theWindow);
  85. extern Boolean utl_WaitNextEvent (short eventMask, EventRecord *theEvent,
  86.     long sleep, RgnHandle mouseRgn);
  87. extern void utl_DILoad (void);
  88. extern short utl_StopAlert (short alertID, 
  89.     ModalFilterProcPtr filterProc, short cancelItem);
  90. extern void utl_FixStdFile (void);
  91. extern Boolean utl_IsLaser (THPrint hPrint);
  92. extern short utl_AppendDITL (DialogPtr theDialog, short theDITLID);
  93. extern short utl_ScaleFontSize (short fontNum, short fontSize, 
  94.     short percent, Boolean laser);
  95. extern Boolean utl_GetFontNumber (Str255 fontName, short *fontNum);
  96. extern void utl_DrawGrowIcon (WindowPtr theWindow);
  97. extern void utl_InvalGrow (WindowPtr theWindow);
  98. extern long utl_GetLongSleep (void);
  99. extern Boolean utl_SysHasPopUp (void);
  100. extern Boolean utl_CouldDrag (Rect *windRect, short offset);
  101. extern void utl_SaveWindowPos (WindowPtr theWindow, Rect *userState, 
  102.     Boolean *zoomed);
  103. extern void utl_RestoreWindowPos (WindowPtr theWindow, Rect *userState, 
  104.     Boolean zoomed, short offset,
  105.     utl_ComputeStdStatePtr computeStdState,
  106.     utl_ComputeDefStatePtr computeDefState);
  107. extern pascal void utl_FrameItem (WindowPtr theWindow, short itemNo);
  108. extern Boolean utl_IsDAWindow (WindowPtr theWindow);
  109. extern Boolean utl_SysHasNotMgr (void);
  110.  
  111. #endif